1. 需求
请在LVS负载均衡主节点上,模拟keepalived健康检查功能管理LVS节点,当节点挂掉时从服务器池中将其剔除,好了后再将其加到服务器池中来。
2. 参考脚本
参考脚本如下:123456789101112131415161718192021222324252627282930313233IPVSADM=/sbin/ipvsadmVIP=10.0.0.3PORT=80RIPS=(10.0.0.710.0.0.8)while truedo for ((i=0; i<${#RIPS[*]}; i++)) do PORT_COUNT=`nmap ${RIPS[$i]} -p $PORT | grep open | wc -l` #<==检测节点,是否正常 if [ $PORT_COUNT -ne 1 ] #<==如果节点不通 then if [ `$IPVSADM -Ln | grep ${RIPS[$i]} | wc -l` -ne 0 ] then $IPVSADM -d -t $VIP:$PORT -r ${RIPS[$i]}:$PORT > /dev/null 2>&1 #<==删除不正常的节点 fi else #<==如果节点正常 if [ `$IPVSADM -Ln | grep ${RIPS[$i]} | wc -l` -eq 0 ] #<==如果节点池中没有RS then $IPVSADM -a -t $VIP:$PORT -r ${RIPS[$i]}:PORT > /dev/null 2>&1 #<==添加对应的节点 fi fi done sleep 5done